import request from '../utils/request'

/**
 * 获取快递驿站配置列表
 * @param {Object} data 查询参数
 * @returns {Promise} 查询结果
 */
export function getExpressStageList(data) {
  return request({
    url: '/express/address/config/list',
    method: 'post',
    data
  })
}

/**
 * 创建快递驿站配置
 * @param {Object} data 配置数据
 * @returns {Promise} 创建结果
 */
export function createExpressStage(data) {
  return request({
    url: '/express/address/config/create',
    method: 'post',
    data
  })
}

/**
 * 更新快递驿站配置
 * @param {Object} data 配置数据
 * @returns {Promise} 更新结果
 */
export function updateExpressStage(data) {
  return request({
    url: '/express/address/config/update',
    method: 'post',
    data
  })
}

/**
 * 删除快递驿站配置
 * @param {string} id 配置ID
 * @returns {Promise} 删除结果
 */
export function deleteExpressStage(id) {
  return request({
    url: '/express/address/config/delete',
    method: 'post',
    data: {
      param: {
        id: id
      }
    }
  })
}

/**
 * 批量删除快递驿站配置
 * @param {Array} ids 配置ID数组
 * @returns {Promise} 删除结果
 */
export function batchDeleteExpressStages(ids) {
  return request({
    url: '/express/address/config/batch/delete',
    method: 'post',
    data: {
      param: {
        ids: ids
      }
    }
  })
}

// ==================== 包裹配置相关接口 ====================

/**
 * 获取包裹配置列表
 * @param {Object} data 查询参数
 * @returns {Promise} 查询结果
 */
export function getPackageConfigList(data) {
  return request({
    url: '/express/package/config/list',
    method: 'post',
    data
  })
}

/**
 * 创建包裹配置
 * @param {Object} data 配置数据
 * @returns {Promise} 创建结果
 */
export function createPackageConfig(data) {
  return request({
    url: '/express/package/config/create',
    method: 'post',
    data
  })
}

/**
 * 更新包裹配置
 * @param {Object} data 配置数据
 * @returns {Promise} 更新结果
 */
export function updatePackageConfig(data) {
  return request({
    url: '/express/package/config/update',
    method: 'post',
    data
  })
}

/**
 * 删除包裹配置
 * @param {string} id 配置ID
 * @returns {Promise} 删除结果
 */
export function deletePackageConfig(id) {
  return request({
    url: '/express/package/config/delete',
    method: 'post',
    data: {
      param: {
        id: id
      }
    }
  })
}

/**
 * 批量删除包裹配置
 * @param {Array} ids 配置ID数组
 * @returns {Promise} 删除结果
 */
export function batchDeletePackageConfigs(ids) {
  return request({
    url: '/express/package/config/batch/delete',
    method: 'post',
    data: {
      param: {
        ids: ids
      }
    }
  })
}
